package Day019_Junit单元测试_NIO.demo3_Buffer类_缓冲区;

import java.nio.ByteBuffer;
import java.util.Arrays;

/**
 * @author zhangyan
 * @date 2020/5/12 10:40
 */
/*
    向ByteBuffer添加数据:
                public ByteBuffer put(byte b)：向当前可用位置添加数据
                public ByteBuffer put(byte[] byteArray)：向当前可用位置添加一个byte[]数组
                public ByteBuffer put(byte[] byteArray,int offset,int len)：添加一个byte[]数组的一部分

                Byte array();  把ByteBuffer数组转换成byte数组
 */
public class Test3_put方法 {
    public static void main(String[] args) {

        //创建ByteBuffer缓冲数组
        ByteBuffer bb = ByteBuffer.allocate(10);

        //1.添加数据
        // b1.put((byte) 11);
        byte b = 11;
        bb.put(b);
        //打印
        //Byte array();  把ByteBuffer数组转换成byte数组
        byte[] bytes= bb.array();
        System.out.println(Arrays.toString(bytes)); // [11, 0, 0, 0, 0, 0, 0, 0, 0, 0]

        //2.添加数组
        byte[] bytes1 = {22,33,44};
        bb.put(bytes1);
        System.out.println(Arrays.toString(bb.array())); // [11, 22, 33, 44, 0, 0, 0, 0, 0]

        //3.添加数组的一部分
        byte[] bytes2 = {55,66,77,88};
        bb.put(bytes2,1,2);
        System.out.println(Arrays.toString(bb.array())); // [11, 22, 33, 44, 66, 77, 0, 0, 0, 0]

    }
}
